# 集合：set（集合） 也是python中的一种数据类型，是一个无序且不重复的元素集合

set1={1,3.14,"tom"}   #创建一个集合
print(type(set1))     #查看变量set1的数据类型-----------set
# print(set1)
list1=[1,5,6,3.14,"tom",8,6,5,1]    #声明了一个列表
#通过类型转换，将列表转换成集合；注意：若列表中有重复的元素，转换为集合后只会保留一个
set2=set(list1)
print("set2:{}".format(set2))
# add向集合中添加元素
set1.add("白展堂")
# print(set1)
# clear清空集合中的元素
# set1.clear()
# difference求差集   第一个集合中存在，第二个集合中不存在的
print("set1:{}".format(set1))
print("set1中存在但是set2中不存在的元素：{}".format(set1.difference(set2)))
print("set2中存在但是set1中不存在的元素：{}".format(set2.difference(set1)))
# intersection：求交集；两个集合中都存在的元素
print("既存在于set1中也存在于set2中的元素：{}".format(set1.intersection(set2)))
# union:求并集，两个集合里面是所有的元素
print("set1与set2中的所有元素：{}".format(set1.union(set2)))
# pop函数可以随机删除集合中的元素，并返回删除元素
print("原集合:{}".format(set1))
# print("执行pop函数删除的元素是：{}".format(set1.pop()))
# print("执行pop函数删除元素之后的集合：{}".format(set1))
# discard指定元素进行删除操作
# set1.discard(3.14)
# print("执行discard函数删除元素之后的集合：{}".format(set1))
set3={"佟湘玉",6,3.14}
print("set3集合：{}".format(set3))
# update方法可以实现批量增加，类型与union方法，将两个集合的并集结果放入在原集合中
set1.update(set3)
print("执行更新操作update，将set2批量加入到set1中{}".format(set1))








